Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Node / ReticulumProjects / MeshChatX.git / files / meshchatx / src / backend / interface_enabled_flag.py

Displaying Raw • Download


meshchatx/src/backend/interface_enabled_flag.py a96697b9a554c7ae068fb1b4a2bd19f34f918ce3 (a96697b9) Text, 852 B

T8b949e# SPDX-License-Identifier: 0BSD

T8b949e"""Helpers for Reticulum interface config flag mutations."""

Tff7b72from T7ee787__future__ Tff7b72import Te6edf3annotations


Tff7b72def Td2a8ffapply_interface_enabled_flagTb4b4b4(Te6edf3interfaceTb4b4b4: Tffa657dictTb4b4b4, Tff7b72*Tb4b4b4, Te6edf3enabledTb4b4b4: Tffa657boolTb4b4b4) Tff7b72-Tff7b72> Tff7b72NoneTb4b4b4:
T8b949e"""Set enabled/interface_enabled consistently, including missing-key configs.

Older or hand-edited configs may omit both keys. Enable/disable must still
write a flag so the next RNS reload honors the change.
"""
Tff7b72if Tff7b72not Tffa657isinstanceTb4b4b4(Te6edf3interfaceTb4b4b4, Tffa657dictTb4b4b4)Tb4b4b4:
Tff7b72raise Tf85149TypeErrorTb4b4b4(Ta5d6ff"Ta5d6ffinterface must be a dictTa5d6ff"Tb4b4b4)
Te6edf3value Tff7b72= Ta5d6ff"Ta5d6fftrueTa5d6ff" Tff7b72if Te6edf3enabled Tff7b72else Ta5d6ff"Ta5d6fffalseTa5d6ff"
Tff7b72if Ta5d6ff"Ta5d6ffenabledTa5d6ff" Tff7b72in Te6edf3interfaceTb4b4b4:
Te6edf3interfaceTb4b4b4[Ta5d6ff"Ta5d6ffenabledTa5d6ff"Tb4b4b4] Tff7b72= Te6edf3value
Tff7b72if Ta5d6ff"Ta5d6ffinterface_enabledTa5d6ff" Tff7b72in Te6edf3interfaceTb4b4b4:
Te6edf3interfaceTb4b4b4[Ta5d6ff"Ta5d6ffinterface_enabledTa5d6ff"Tb4b4b4] Tff7b72= Te6edf3value
Tff7b72if Ta5d6ff"Ta5d6ffenabledTa5d6ff" Tff7b72not Tff7b72in Te6edf3interface Tff7b72and Ta5d6ff"Ta5d6ffinterface_enabledTa5d6ff" Tff7b72not Tff7b72in Te6edf3interfaceTb4b4b4:
Te6edf3interfaceTb4b4b4[Ta5d6ff"Ta5d6ffinterface_enabledTa5d6ff"Tb4b4b4] Tff7b72= Te6edf3value


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────